/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package co.edu.eam.supergiros.persistencia.dao.implementaciones;

import co.edu.eam.supergiros.persistencia.dao.definiciones.IDAOCambio;
import co.edu.eam.supergiros.persistencia.entidades.Cambio;
import java.util.Date;
import java.util.List;
import javax.persistence.Entity;
import javax.persistence.EntityManager;

import javax.persistence.Query;

/**
 *
 * @author EAM
 */
public class DAOCambio implements IDAOCambio {

    private EntityManager em;

    public DAOCambio(EntityManager em) {
        this.em = em;
    }

    /**
     * metodo que crea un cambio dentro de la BD
     * @param cambio que sera creado
     */
    public void crear(Cambio cambio) {
        em.persist(cambio);
    }

    /**
     * metodo que lista los cambios por cliente
     * @param cliente con el cual se hace el listado
     * @return la lista de cambios
     */
    public List<Cambio> listarCambiosPorCliente(String cliente) {
        Query q = em.createNamedQuery(Cambio.CONSULTA_LISTAR_CAMBIO_CLIENTE);
        q.setParameter(Cambio.PARAMETRO_CLIENTE, cliente);
        List<Cambio> lista = q.getResultList();
        return lista;
    }

    public List<Cambio> listarCambiosPorFecha(Date fecha) {
        throw new UnsupportedOperationException("Not supported yet.");
    }
}
